博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
博客转发小工具1
阅读量:5266 次
发布时间:2019-06-14

本文共 3587 字,大约阅读时间需要 11 分钟。

有些朋友在转发别人博客的时候会问,博客怎么转发的啊?让我一段一段的复制吗?那图片怎么办?隐藏代码要一个一个的打开了复制?

对,很麻烦。费时费力。有的同学会说收藏不就可以了吗?收藏只是收藏了别人的地址,并没有收藏人家的全部内容。如果人家删除原文章,那就等于白收藏了。

我不知道 博客园有没有一键转发的功能,反正我是没找到的。于是,闲来无事,做了个博客转发小工具。

其实很简单,分三步。 

一:取得页面内容

取页面内容需要用到 详细用法可以百度之。

1          ///  2         /// 抓取方法 3         ///  4         /// url地址 5         /// 
6 public Result getList(string url) 7 { 8 if (string.IsNullOrEmpty(url) || string.IsNullOrEmpty(url.Trim())) 9 return null;//如果url为空 则立刻返回10 Result result = new Result();11 HtmlWeb htmlWeb = new HtmlWeb();12 try13 {14 HtmlAgilityPack.HtmlDocument htmlDoc = htmlWeb.Load(url);15 result.url = url;16 result.content = htmlDoc.DocumentNode.SelectSingleNode("//div[@id='cnblogs_post_body']").InnerHtml;//这里是去div id为cnblogs_post_body的全部内容 也就是我们发布的博客全部内容17 result.title = htmlDoc.DocumentNode.SelectSingleNode("//a[@id='cb_post_title_url']").InnerText; //取标题18 }19 catch (Exception) { return null; }20 return result;21 }

二:复制页面内容

Clipboard.SetText(txt_content.Text);//把内容复制到粘贴板

三:粘贴内容发布

这里就没有我的事了。你自己去后台发布就ok了。

不过发布的时候要注意了。粘贴的时候一定要切换到html模式。

贴图了

 

这里贴出全部代码,因为代码量非常少,就放一个文件了。

1 using HtmlAgilityPack; 2 using System; 3 using System.Collections.Generic; 4 using System.ComponentModel; 5 using System.Data; 6 using System.Drawing; 7 using System.Text; 8 using System.Windows.Forms; 9 10 namespace 博客转发11 {12     public partial class Form1 : Form13     {14         public Form1()15         {16             InitializeComponent();17         }18 19         private void button1_Click(object sender, EventArgs e)20         {21             //string url = @"http://www.cnblogs.com/zhaopei/p/4174811.html";           22             Result re = getList(txt_url.Text);23             if (re == null)24             {25                 MessageBox.Show("请输入正确博客园的博客地址~"); return;26             }27             string str = @"【转】" + re.title + "
";28 txt_content.Text = str + re.content;29 txt_title.Text = "【转】" + re.title;30 Clipboard.SetText(txt_content.Text);//把内容复制到粘贴板31 MessageBox.Show("已经成功复制到粘贴板~");32 }33 34 /// 35 /// 抓取方法36 /// 37 /// url地址38 ///
39 public Result getList(string url)40 {41 if (string.IsNullOrEmpty(url) || string.IsNullOrEmpty(url.Trim()))42 return null;//如果url为空 则立刻返回43 Result result = new Result();44 HtmlWeb htmlWeb = new HtmlWeb();45 try46 {47 HtmlAgilityPack.HtmlDocument htmlDoc = htmlWeb.Load(url);48 result.url = url;49 result.content = htmlDoc.DocumentNode.SelectSingleNode("//div[@id='cnblogs_post_body']").InnerHtml;//这里是去div id为cnblogs_post_body的全部内容 也就是我们发布的博客全部内容50 result.title = htmlDoc.DocumentNode.SelectSingleNode("//a[@id='cb_post_title_url']").InnerText; //取标题51 }52 catch (Exception) { return null; }53 return result;54 }55 }56 57 public class Result58 {59 /// 60 /// 链接61 /// 62 public string url { get; set; }63 /// 64 /// 标题65 /// 66 public string title { get; set; }67 /// 68 /// 正文内容69 /// 70 public string content { get; set; }71 }72 }

 

 密码:5c6q   密码:60fr

如果大家有兴趣可以在此基础上进行自己的扩展和修改。

转载于:https://www.cnblogs.com/yujihaia/p/7367589.html

你可能感兴趣的文章
php建立MySQL数据表
查看>>
最简单的线程同步的例子
查看>>
JSP、Servlet乱码终极解决方案
查看>>
旅途上看的电影和观后感
查看>>
qt实现类似QQ伸缩窗口--鼠标事件应用
查看>>
Ztree异步树加载
查看>>
复杂问题的简单抽象:魔兽世界中的兔子们
查看>>
UVA 10529-Dumb Bones(概率dp)
查看>>
关于IE和火狐,谷歌,Safari对Html标签Object和Embed的支持问题
查看>>
MyEclipse DB Browser使用图文全攻略
查看>>
poj3320 Jessica's Reading Problem(尺取思路+STL)
查看>>
A - Vasya and Socks
查看>>
项目管理、设计开发、代码管理、bug管理工具介绍
查看>>
分布式计算开源框架Hadoop介绍
查看>>
安卓平台接口剖析
查看>>
linux文件编码查看与修改
查看>>
[Java] 系统环境变量配置
查看>>
坏的事情不都会带来坏的结果
查看>>
RPC的基础:调研EOS插件http_plugin
查看>>
HIT1946 希尔伯特分形曲线(dfs)
查看>>